#pragma once
#include "FAQKeyAlgorithm.h"
#include "crypto/algorithms/iparameters/FAQDerivationParameters.h"

namespace yzrilyzr_crypto{
	ECLASS(FAQKeyDerivationFunction, public virtual FAQKeyAlgorithm){
	public:
	FAQKeyDerivationFunction()=default;
	virtual void init(const FAQDerivationParameters &parameters)=0;
	virtual yzrilyzr_array::ByteArray generate(const yzrilyzr_array::ByteArray & salt)=0;
	};
}